<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>函数作为对象的乐趣</title>
</head>
<body>
	<script>
	//存储不重复的函数 
	var store ={
		id:1,
		cache:{},
		add:function(fn){
			if(!fn.id){
				fn.id=this.id;
				this.id++;//this 不能省略。。。
				this.cache[fn.id]=fn;
				return true;
			}

		}
	};
		function ninja(){}
		console.log(store.add(ninja));
		console.log(store.add(ninja));
		//自记忆函数
		function isPrime(val){
			if(!isPrime.answer){
				isPrime.answer={}
			}
			if(isPrime.answer[val]){
				return isPrime.answer[val];
			}
			var prime=val!==0&&val!==1;
			for(var i=2;i<val;i++){
				if(val%i===0){
					prime=false;
					break;
				}
			}
			return isPrime.answer[val]=prime;
		}
		console.log(isPrime(5));
		console.log(isPrime.answer);
		console.log(111);
		console.log(222);
	</script>
</body>
</html>